package zust.se.delicious.service;

import java.util.List;

import zust.se.delicious.domain.User;
import zust.se.delicious.vo.FollowUserBean;
import zust.se.delicious.vo.PageBean;
import zust.se.delicious.vo.RegisterUserBean;
import zust.se.delicious.vo.SessionUserBean;
import zust.se.delicious.vo.UserBean;

public interface UserService {
	/*
	 * username 用户名 password 密码 return 返回匹配的userbean，倘若无匹配则为null
	 */
	SessionUserBean login(String username, String password);

	/*
	 * registUser 待注册用户实例 return 返回匹配的userbean，倘若用户名已存在则为null
	 */
	boolean register(RegisterUserBean registUser);

	/*
	 * id 用户id
	 */
	boolean follow(Integer uid, Integer fid);

	boolean unfollow(Integer uid, Integer fid);

	boolean isFollow(Integer uid, Integer fid);

	void updateUserInfo(User user);

	UserBean getHomeUser(int uid);

	List<UserBean> getFollowingList(int uid, PageBean pageBean);

	List<UserBean> getFollowerList(int uid, PageBean pageBean);

	boolean valPassword(int uid, String oldPassword, String newPassword);
}
